#include "change_cartable.h"
#include "ui_change_cartable.h"
#include <QDebug>
//修改数据库界面
change_cartable::change_cartable(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::change_cartable)
{
    ui->setupUi(this);

    //ui->setupUi(this);
    //***************数据库代码
//    //安装数据库的驱动--》我电脑上用的是sqlite3
//    mybase=QSqlDatabase::addDatabase("QSQLITE");

//    //设置数据库的路径名
//    mybase.setDatabaseName("./1.db");

    //解决 数据库多次报错问题
    if (!QSqlDatabase::contains("test-connect"))
        mybase= QSqlDatabase::addDatabase("QSQLITE","test-connect");  //第一次打开数据库时，连接数据库。
    else
        mybase= QSqlDatabase::database("test-connect");   //数据库已经打开后，再次连接时，获取句柄。


    //    //设置数据库的路径名
        mybase.setDatabaseName("./1.db");
    //打开数据库
    bool ret=mybase.open();
    if(!ret)
    {
        qDebug()<<"打开数据库失败了!./1.db no open";
        return;
    }

    //在数据库中新建卡号 和 车牌号  进入时间  刷次数                   卡号     和  车牌号        进入时间    刷次数  车位 carbot
    QSqlQuery query(mybase);
    //执行新建表格语句    表的名字   car_in_out_table
   // ret=query.exec("create table if not exists producetable (name text,price float);");
    // ret=query.exec("create table if not exists producetable1 (rfid text,carid text,intime text);");
     //在数据库中新建卡号 和 车牌号  进入时间  刷次数                   卡号     和  车牌号        进入时间    刷次数  车位 carbot
   ret=query.exec("create table if not exists car_in_out_table (rfid  text,carid text ,intotime text,cs int,carbot text);");
    if(!ret)
    {
        qDebug()<<"新建表格失败的原因: "<<query.lastError().text();
        return;
    }
}

change_cartable::~change_cartable()
{
    delete ui;
}

//void change_cartable::on_pushButton_clicked()
//{
//    //mybase.close();
//    qDebug()<<"点击了退出";
////    ui->widget->close();
//    QWidget *last =this->parentWidget();
//    //all_cam->camera_init();//摄像头重新打开  有段错误
//    //is_memcpy=true;//决定开发板映射摄像头的图片数据
//    last->show();
//    this->close();
//}


//  确定修改
void change_cartable::on_pushButton_2_clicked()
{
    QString oldcarid=ui->oldcarid->text();
    QString newcarid=ui->newcarid->text();
    QString newrfid=ui->newrfid->text();
    QString  newcarbot=ui->newcarbot->text();

    //拼接得到完整的修改语句
    QString cmd=QString("update car_in_out_table  set carid='%1', rfid='%2' , carbot='%3' where carid='%4';").arg(newcarid).arg(newrfid).arg(newcarbot).arg(oldcarid);
    //执行修改语句
    QSqlQuery query(mybase);
    bool ret=query.exec(cmd);
    if(!ret)
    {
        qDebug()<<"修改失败的原因: "<<query.lastError().text();
        return;
    }
}

//确认删除
void change_cartable::on_pushButton_3_clicked()
{
     QString oldcarid=ui->oldcarid_2->text();
     //拼接得到完整的删除语句
     QString cmd=QString("delete from car_in_out_table  where carid='%1';").arg(oldcarid);
     //执行删除语句
     QSqlQuery query(mybase);
     bool ret=query.exec(cmd);
     if(!ret)
     {
         qDebug()<<"删除失败的原因: "<<query.lastError().text();
         return;
     }
     else
     {
         qDebug()<<"删除成功";
     }
}


//退出
void change_cartable::on_out_clicked()
{
    //mybase.close();
    qDebug()<<"点击了退出";
//    ui->widget->close();
    QWidget *last =this->parentWidget();
    //all_cam->camera_init();//摄像头重新打开  有段错误
    //is_memcpy=true;//决定开发板映射摄像头的图片数据
    last->show();
    this->close();
}
